home *** CD-ROM | disk | FTP | other *** search
/ SGI Developer Toolbox 6.1 / SGI Developer Toolbox 6.1 - Disc 4.iso / public / SciAn / src / ScianNames.h < prev    next >
C/C++ Source or Header  |  1994-08-01  |  1KB  |  59 lines

  1. /* ScianNames.h John R. Murray
  2.  */
  3.  
  4. typedef struct    NameNodeStr {
  5.         char            *stringPtr;
  6.         NameTyp            id;
  7.         struct NameNodeStr    *left;
  8.         struct NameNodeStr    *right;
  9. } NameNode,*NameNodePtr;
  10.  
  11. #define        MAXIDNUM    5000
  12. #define        MAXPREDEFIDNUM    1000
  13.  
  14.  
  15.  
  16. typedef struct {
  17.     char    *str;        /* string name of something */
  18.     ThingPtr    thing;    /* id number of the same something */
  19. } IDArrayStruct;
  20.  
  21. extern IDArrayStruct IDArray[MAXIDNUM];
  22.  
  23. extern NameNodePtr IDsTree;
  24.  
  25. /* GetID returns the ID of an object */
  26. #define GetID(obj)    (((ObjPtr) obj)->name)
  27.  
  28. #ifdef PROTO
  29. void        InitNames();
  30. void        KillNames();
  31. NameTyp        GetNewID();
  32. NameNodePtr    NewNameNode(char *str,NameTyp id);
  33. NameTyp        NameToID(char namestr[]);
  34. char        *IDToName(NameTyp id);
  35. void        DefineName(char *namestr,NameTyp id);
  36. void        PrintNameNode(NameNodePtr node, int depth);
  37. void        PrintNameTree();
  38. void        PrintIDTree();
  39. ThingPtr    FindIDValue(NameTyp id);
  40. NameTyp        GetInternalID(char *);
  41. char        *GetInternalString(NameTyp);
  42. void        DefineID(char *, NameTyp);
  43. #else
  44. void        InitNames();
  45. void        KillNames();
  46. NameTyp        GetNewID();
  47. NameNodePtr    NewNameNode();
  48. NameTyp        NameToID();
  49. char        *IDToName();
  50. void        DefineName();
  51. void        PrintNameNode();
  52. void        PrintNameTree();
  53. void        PrintIDTree();
  54. ThingPtr    FindIDValue();
  55. NameTyp        GetInternalID();
  56. char        *GetInternalString();
  57. void        DefineId();
  58. #endif
  59.